﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;

using NUnit.Framework;

namespace Working.Domínio.Teste
{
    [TestFixture]
    public class TesteCidade
    {
        [Test]
        public void TestaConstrutorComParâmetros1()
        {
            string nome = "Belo Horizonte";
            Cidade cidade = new Cidade(nome);
            Assert.AreEqual(nome, cidade.Nome);
        }

        [Test]
        public void TestaConstrutorComParâmetros2()
        {
            string nome = "Belo Horizonte";
            Estado estado = new Estado("Minas Gerais");
            Cidade cidade = new Cidade(nome, estado);
            Assert.AreEqual(nome, cidade.Nome);
            Assert.AreEqual(estado, cidade.Estado);
        }

        [Test]
        [ExpectedException(typeof(ApplicationException))]
        public void TestarConstrutorComParâmetroNulo()
        {
            string nomeCidade = string.Empty;
            Cidade cidade = new Cidade(nomeCidade);
        }

        [Test]
        public void TestaPropriedades()
        {
            string nome = "Belo Horizonte";
            Cidade cidade = new Cidade(nome);

            Estado estado = new Estado("Minas Gerais");
            cidade.Estado = estado;

            Assert.AreEqual(nome, cidade.Nome);
            Assert.AreEqual(estado, cidade.Estado);
        }        


        [Test]
        public void TestarToString()
        {
            string nomeCidade = "Belo Horizonte";
            Cidade cidade = new Cidade(nomeCidade);

            Assert.AreEqual(nomeCidade, cidade.ToString());
        }
    }
}
